package com.df.bpm.utils.businessViewerV2.human;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

@TableName("human.employeeList")
@Getter
@Setter
@ToString
@Accessors(chain = true)
public class M_human implements Serializable {
    /**
     * 主键id
     */
    @Schema(description = "主键id")
    @TableId(value = "employeeListIndex", type = IdType.AUTO)
    private Integer employeeListIndex;

    /**
     * 工号
     */
    @Schema(description = "工号")
    private String number;

    /**
     * 姓名
     */
    @Schema(description = "姓名")
    private String name;

    /**
     * 创建日期
     */
    @Schema(description = "创建日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date createTime;

    /**
     * 修改日期
     */
    @Schema(description = "修改日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date lastTime;

    /**
     *入职日期
     */
    @Schema(description = "入职日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date entryDate;

    /**
     * 部门
     */
    @Schema(description = "部门")
    private String department;

    /**
     * 班次
     */
    @Schema(description = "班次")
    @TableField(value = "\"class\"")
    private String clazz;

    /**
     * 性别
     */
    @Schema(description = "性别")
    private String sex;

    /**
     * 离职日期
     */
    @Schema(description = "离职日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date leaveDate;

    /**
     * 离职原因
     */
    @Schema(description = "离职原因")
    private String reasonsForLeaving;

    /**
     * 联系方式
     */
    @Schema(description = "联系方式")
    private String phone;

    /**
     * 紧急联系方式
     */
    @Schema(description = "紧急联系方式")
    private String emergencyPhone;

    /**
     * 衣柜
     */
    @Schema(description = "衣柜")
    private String wardrobe;

    /**
     * 鞋柜
     */
    @Schema(description = "鞋柜")
    private String shoeCabinet;

    /**
     * 卡机
     */
    @Schema(description = "卡机")
    private String cardMachine;
    /**
     * 衣服尺寸
     */
    @Schema(description = "衣服尺寸")
    private String clothesSize;
    /**
     * 鞋子尺寸
     */
    @Schema(description = "鞋子尺寸")
    private String shoeSize;

    /**
     * 档案编号
     */
    @Schema(description = "档案编号")
    private String fileNo;

    /**
     * 身份证号
     */
    @Schema(description = "身份证号")
    private String IDcard;

    /**
     * 学历
     */
    @Schema(description = "学历")
    private String education;

    /**
     * 住址
     */
    @Schema(description = "住址")
    private String address;
    /**
     * 籍贯
     */
    @Schema(description = "籍贯")
    private String homeTown;



    /**
     * 培训结果
     */
    @Schema(description = "培训结果")
    private String trainingResult;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date lastHat;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date lastClothes;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date lastShoes;

    /**
     * 职务
     */
    @Schema(description = "职务")
    private String job;
    /**
     * 职务津贴
     */
    @Schema(description = "职务津贴")
    private String jobReward;
    /**
     *
     */
    @Schema(description = "")
    private Integer basicPerformance;


    /**
     * 车间
     */
    @Schema(description = "车间")
    private String workShop;

    /**
     * 卡号
     */
    @Schema(description = "卡号")
    private String workCard;

    /**
     * 电子工卡MAC
     */
    @Schema(description = "电子工卡MAC")
    private String msgCard;

}
